package com.steel.yfmall.cloud.assistant.utils.constants;

import java.util.HashMap;
import java.util.Map;

/**
 * @author yuchaohua
 * @version V1.0
 * @Title: ZgConstants
 * @Package com.work.shop.cloud.out.bean
 * @Description: (用一句话描述该文件做什么)
 * @date 2020/9/7 20:14
 */
public class ZgConstants {

    /**
     * 合同类型:(1：月度协议，2年度协议,3一单一议)
     */
    public static Map<String,String> contractTypeMap = new HashMap<>();
    static {
        contractTypeMap.put("1", "M");
        contractTypeMap.put("2", "Y");
        contractTypeMap.put("3", "C");
    }

    /**
     * 订单类型 1:一般订单  2:委外加工  3:来料加工
     */
    public static Map<String,String> orderTypeMap = new HashMap<>();
    static {
        orderTypeMap.put("1", "N");
        orderTypeMap.put("2", "O");
        orderTypeMap.put("3", "P");
    }

    /**
     * 排产方式（1生产订单,2现货订单）
     */
    public static Map<String,String> productionSchedulingMap = new HashMap<>();
    static {
        productionSchedulingMap.put("1", "P");
        productionSchedulingMap.put("2", "I");
    }

    /**
     * 运费担当1一票结、2两票结、3自提
     *  A:客提 D:一票送货-锁定运费  H:一票送货-实际运费  E:两票送货
     */
    public static Map<String,String> transWayMap = new HashMap<>();
    static {
        transWayMap.put("3","A");
        transWayMap.put("4","D");
        transWayMap.put("1","H");
        transWayMap.put("2","E");
    }

    /**
     * 结算模式（1期间定价、2旬定价、3半月定价、4月定价、5月末定价、6锁定价、7出厂定价、8人工定价）必填，
     * L:锁定价
     * T:旬定价
     * HM:半月定价
     * O:出厂定价
     * P:期间定价
     * M:月定价
     * E:月末定价
     * C:货到定价-人工入价
     * CG:货到定价-系统取价
     * CGI:货到定价-系统取价(不可逆)
     * HI:人工入价
     */
    public static Map<String,String> settleModeMap = new HashMap<>();
    static {
        settleModeMap.put("1","P");
        settleModeMap.put("2","T");
        settleModeMap.put("3","HM");
        settleModeMap.put("4","M");
        settleModeMap.put("5","E");
        settleModeMap.put("6","L");
        settleModeMap.put("7","O");
        settleModeMap.put("8","HI");
    }

    /**
     * 价格类型1备案价、2全网价、3网价基价、4指导价、5月结算价、6指导价+网价
     * 必填(结算模式为锁定价除外)，
     * PUT-ON-FILE:备案价
     * GUIDE:指导价
     * NET:全网价
     * NET_BASE:网价基价
     * MONTH:月结算价
     * GUIDE_NET:指导价+网价
     */
    public static Map<String,String> priceTypeMap = new HashMap<>();
    static {
        priceTypeMap.put("1","PUT-ON-FILE");
        priceTypeMap.put("2","NET");
        priceTypeMap.put("3","NET_BASE");
        priceTypeMap.put("4","GUIDE");
        priceTypeMap.put("5","MONTH");
        priceTypeMap.put("6","GUIDE_NET");
    }

    /**
     * 缴款方式
     * 必填，
     * F:全款缴款
     * N:节点缴款
     */
    public static Map<String,String> sd = new HashMap<>();
    static {

    }

    /**
     * 收款方式 类型(1现款、2承兑、3现款或承兑)
     * A:现汇
     * B:承兑
     * C:现款或承兑
     */
    public static Map<String,String> payMethodMap = new HashMap<>();
    static {
        payMethodMap.put("1","A");
        payMethodMap.put("2","B");
        payMethodMap.put("3","C");
    }

    /**
     *  商品类型  0  I:现货订单
     */
    public final static String CONTRACT_TYPE_B_I = "I";

    /**
     * 商品类型 7: P:生产订单
     */
    public final static String CONTRACT_TYPE_B_P = "P";

    /**
     * 订单类型    0  I:现货订单   7  P:生产订单
     */
    public static Map<String,Integer> orderContractTypeBMap = new HashMap<>();
    static {
        orderContractTypeBMap.put("I",0);
        orderContractTypeBMap.put("P",7);
    }

    /**
     * A 客提
     */
    public final static String TRANS_WAY_A = "A";

    /**
     * F 自提
     */
    public final static String TRANS_WAY_F = "F";

    /**
     * 表示=
     */
    public final static String eq = "eq";

    /**
     * 表示<>
     */
    public final static String notEq = "notEq";

    /**
     * 表示>
     */
    public final static String great = "great";

    /**
     * 表示>=
     */
    public final static String greatEq = "greatEq";

    /**
     * 表示 <
     */
    public final static String less = "less";

    /**
     * 表示 <=
     */
    public final static String lessEq = "lessEq";

    /**
     * in 需要注意，传进来的value必须是使用“,”进行拼装的字符串、notIn 同理
     */
    public final static String in = "in";

    /**
     * 表示notIn
     */
    public final static String notIn = "notIn";

    /**
     * 表示xxx%
     */
    public final static String likeStart = "likeStart";

    /**
     * 表示 %xxx
     */
    public final static String likeEnd = "likeEnd";

    /**
     * 表示 %XXX%
     */
    public final static String likeStartEnd = "likeStartEnd";

    /**
     * 表示 notLike
     */
    public final static String notLike = "notLike";

    /**
     * 表示 start
     */
    public final static String start = "start";

    /**
     * 表示 end
     */
    public final static String end = "end";

    /**
     * 表示 startEnd
     */
    public final static String startEnd = "startEnd";

}
